#ifndef __GUI_BASE_H__
#define __GUI_BASE_H__

#ifndef __cplusplus
#  error core.hpp header must be compiled as C++
#endif

#include <opencv2/opencv.hpp>

#include "gui_obj.hpp"

using namespace cv;

class GuiBase: public GuiObj {
public:
	static Mat dispMem;

public:
	void gbPixel(Point point, unsigned int color);
	void gbPixel(int x, int y, unsigned int color);
	void gbDrawRect(Point start, Point end, unsigned int color, int w = 1);
	void gbLine(Point start, Point end, unsigned int color, int w = 1);

	virtual void gbFillRect(Point start, Point end, unsigned int color);

	GuiBase() {
		geom.height = dispMem.size().height;
		geom.width = dispMem.size().width;
	}
};

#endif
